Concurrent Clean

نویسندگان

  • E. G. J. M. H. Nöcker
  • Sjaak Smetsers
  • Marko C. J. D. van Eekelen
  • Marinus J. Plasmeijer
چکیده

Concurrent Clean is an experimental, lazy, higher-order parallel functional programming language based on term graph rewriting. An important diierence with other languages is that in Clean graphs are manipulated and not terms. This can be used by the programmer to control communication and sharing of computation. Cyclic structures can be deened. Concurrent Clean furthermore allows to control the (parallel) order of evaluation to make eecient evaluation possible. With help of sequential annotations the default lazy evaluation can be locally changed into eager evaluation. The language enables the deenition of partially strict data structures which make a whole new class of algorithms feasible in a functional language. A powerful and fast strictness analyser is incorporated in the system. The quality of the code generated by the Clean compiler has been greatly improved such that it is one of the best code generators for a lazy functional language. Two very powerful parallel annotations enable the programmer to deene concurrent functional programs with arbitrary process topologies. Concurrent Clean is set up in such a way that the eeciency achieved for the sequential case can largely be maintained for a parallel implementation on loosely coupled parallel machine architectures.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Explicit Message Passing for Concurrent Clean

In this paper we look at Concurrent Clean and concurrency and notice that the language has some shortcomings with respect to communication. It does not provide non-determinism, eecient multicasting and data-driven communication. A message passing extension for Concurrent Clean is proposed which provides eecient many-to-many communication. In contrast to other solutions, we chose to have an asyn...

متن کامل

Parallel Elementwise Processable Functions in Concurrent Clean

The behaviour of concurrent and parallel programs can be specified in a functional style. Functional programming style has some inherent concurrent features. However, for a higher degree of expressing parallelism there is a need for new language constructs. In this paper we introduce Concurrent Clean moduls for evaluation strategies in order to control the evaluation degree, the dynamic behavio...

متن کامل

Concurrent Interactive Processes in a Pure Functional Language

In this paper we present an operational semantics for concurrent interactive processes in the purely functional programming language Clean. An interactive process is in essence a state transition system which apart from its logical state can also access the state of the file system, do highlevel Graphical User I/O, and do inter-process communication via synchronous and asynchronous message pass...

متن کامل

CLEAN: a programming environment based on term graph rewriting

The main features of the lazy functional language Concurrent Clean and of its semantics based on Term Graph Rewriting are presented. 1 History The pure, lazy functional language Concurrent Clean (version 1.0) is a major upgrade of the previous release (0.84b) of Clean ((3,10,11]). Clean was originally designed as an experimental intermediate language and deliberately kept syntactically as poor ...

متن کامل

Concurrent oxidations with tandem biocatalysts in one pot: green, selective and clean oxidations of methylene groups to ketones.

A novel tandem-biocatalysts system consisting of a monooxygenase-containing microorganism and an alcohol dehydrogenase is developed for the concurrent oxidations of methylene groups to ketones in one pot, providing green, clean and simple access to valuable ketones with high yield, excellent selectivity and efficient cofactor recycling.

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1991